// 引入joi模块
const Joi = require('joi');

// 定义对象的验证规则
const schema = {
    username: Joi.string().min(2).max(5).required().error(new Error('username属性没有通过验证')),
    password: Joi.string().regex(/^[a-zA-Z0-9](3,30)$/),
    birth: Joi.number().min(1900).max(2022).error(new Error('birth数值没有通过验证'))
}

// 利用异步函数 需要用try catch()  来捕获错误信息、  可以用.ecah来捕获
async function run() {
    try {
        // 实施验证
        await Joi.validate({ username: 'ab', birth: 1999 }, schema)
    } catch (ex) {
        // 利用ex.message  看简洁信息
        console.log(ex.message);
        return;
    }
    console.log('验证通过');
}
run();